

#ifndef INTERFACE_RENDERABLE_H
#define INTERFACE_RENDERABLE_H

#include "Display.hpp"
#include "boost/shared_ptr.hpp"

/******************************************************************************
interface IRenderable 

Cannot be instanced directly. Inherit to child class and override functions as required
******************************************************************************/
class IRenderable
{
public:
     //virtual void Initialize( const boost::shared_ptr< Display > & displayPtr ) {}
     virtual void Render() = 0;

     //virtual ~IRenderable();
protected:
     //IRenderable() {}
     //IRenderable( const IRenderable & ref) {}
     
private:
     const IRenderable & operator=( const IRenderable& ref) {}
};


#endif